home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / mus / misc / DelfScope.lha / DelfScope / src / scope_dsp.a56 < prev    next >
Encoding:
Text File  |  2000-10-03  |  33.3 KB  |  1,035 lines

  1. ;*****************************************************************************
  2. ;
  3. ;    DelfScope - oscilloscope/analyzer for Delfina DSP
  4. ;    Copyright (C) 2000  Michael Henke
  5. ;
  6. ;    This program is free software; you can redistribute it and/or modify
  7. ;    it under the terms of the GNU General Public License as published by
  8. ;    the Free Software Foundation; either version 2 of the License, or
  9. ;    (at your option) any later version.
  10. ;
  11. ;    This program is distributed in the hope that it will be useful,
  12. ;    but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. ;    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. ;    GNU General Public License for more details.
  15. ;
  16. ;    You should have received a copy of the GNU General Public License
  17. ;    along with this program; if not, write to the Free Software
  18. ;    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  19. ;
  20. ;*****************************************************************************
  21.  
  22.  
  23.  
  24.  
  25.     include 'delfequ.inc'
  26.  
  27.     org    p:
  28.  
  29. ;->prog+0
  30.     jmp    convert
  31.  
  32.  
  33.  
  34. ;->prog+2
  35.  
  36. ;***************************************************************************
  37. ;*** DelfModule - receives the input data
  38.     move    y:(r0),r0        ;input pipe
  39.     move    y:(r1),r1        ;output pipe
  40.     move    y:y_bufpt,r4
  41.     movec    #2048-1,m4        ;m4 - modulo addressing
  42.     do    #128,mod_receive_loop
  43.     move    l:(r0)+,x
  44.     move    x,l:(r4)+
  45.     move    x,l:(r1)+
  46. mod_receive_loop
  47.     move    r4,y:y_bufpt
  48.  
  49.     move    y:y_mod_count,a
  50.     move    #>1,x0
  51.     add    x0,a    a,x1
  52.     teq    x1,a            ;do not count while (mod_count==-1)
  53.     move    a,y:y_mod_count
  54.     rts
  55.  
  56.  
  57. ;***************************************************************************
  58. ;*** convert PCM samples
  59. ;
  60. ;  -calculate average amplitudes (into x:avg_l, x:avg_r)
  61. ;  -plot_type==1: 24bit->8bit, half sampling rate (into l:buf8)
  62. ;  -plot_type==2: spectrum analyzer
  63. ;
  64. ; x1 ... number_of_samples
  65. ; x0 ... plot_type  (1 or 2)
  66. ; y1 ... /
  67. ; y0 ... /
  68. convert
  69.     move    x1,n0            ;numsamp            !! n0
  70.     move    x0,y:y_plot_type
  71.     move    y:y_bufpt,r0
  72.     movec    #2048-1,m0        ;m0 - modulo-addressing
  73.     move    r0,x:x_busy        ;set BUSY
  74.     move    (r0)-n0
  75.  
  76. ;******    calculate average amplitude
  77.     move    r0,r6
  78.     movec    m0,m6            ;m6 - modulo-addressing
  79.     move    #>$002000,y1        ;shift right by 10 bits
  80.     clr    b    #<0,x0
  81.     move        x:(r6),a    b,y0
  82.     do    n0,avg_amp_loop
  83.     abs    a    y:(r6)+,b
  84.     abs    b    a,x1
  85.     mpy    x1,y1,a    b,x1
  86.     mpy    x1,y1,b
  87.     add    x0,a
  88.     add    y0,b    a,x0
  89.     move        x:(r6),a    b,y0
  90. avg_amp_loop
  91.     move    y:y_plot_type,n1    ;jmp
  92.     move    #>y_plot_jmp,r1        ;jmp
  93.     move    x0,x:x_avg_l        ;must be divided by numsamp for avg
  94.     move    y0,x:x_avg_r        ;must be divided by numsamp for avg
  95.     move    y:(r1+n1),r1        ;jmp
  96.     movec    m7,m6            ;m6 - linear addressing
  97.     jmp    (r1)
  98.  
  99.  
  100. ;******    plot one: convert 24bit samples to 8bit (into l:buf8)
  101. plot_1    move    n0,a            ;numsamp
  102.     move    #>5,x0
  103.     add    x0,a    #>6,x0
  104.     move    a,x1
  105.     jsr    <delf_div        ;6 samples per loop
  106.     rnd    a    #>l_buf8,r1
  107.     ori    #$04,mr            ;SCALE DOWN mode
  108.     do    a1,p248_loop
  109.     move        l:(r0)+,ab
  110.     move        x:(r0),x1
  111.     add    x1,a    y:(r0)+,x1
  112.     add    x1,b    #>$ff0000,y1
  113.     asr    a
  114.     asr    b
  115.     and    y1,a
  116.     and    y1,b    a1,x0
  117.     move        b1,y0
  118.     move        l:(r0)+,ab
  119.     move        x:(r0),x1
  120.     add    x1,a    y:(r0)+,x1
  121.     add    x1,b    a,x1    ;scale down
  122.     mpy    x1,#8,a
  123.     move        #>$00ff00,y1
  124.     and    y1,a    b,x1    ;scale down
  125.     mpy    x1,#8,b
  126.     or    x0,a
  127.     and    y1,b    a1,x0
  128.     or    y0,b
  129.     move        b1,y0
  130.     move        l:(r0)+,ab
  131.     move        x:(r0),x1
  132.     add    x1,a    y:(r0)+,x1
  133.     add    x1,b    a,x1    ;scale down
  134.     mpy    x1,#16,a
  135.     move        #>$0000ff,y1
  136.     and    y1,a    b,x1    ;scale down
  137.     mpy    x1,#16,b
  138.     or    x0,a
  139.     and    y1,b    a1,x:(r1)
  140.     or    y0,b
  141.     move        b1,y:(r1)+
  142. p248_loop
  143.     andi    #$f3,mr            ;NO SCALING mode
  144.     movec   m7,m0            ;m0 - linear addressing
  145.     move    #<0,x0
  146.     move    x0,x:x_busy        ;clear BUSY
  147.     rts
  148.  
  149.  
  150.  
  151. ;******    plot two: spectrum analyzer
  152. plot_2    move    #>l_fft_in,r7
  153.     move    y:y_bufpt,r0
  154.     move    #1024,n0
  155.     move    #$002000,x1        ;#$002000 - shift right by 10 bits
  156.     move    (r0)-n0
  157.     move    r7,r1            ;#>l_fft_in
  158.     move    #>y_fft_window,r2
  159.     clr    b        x:(r0)+,x0
  160.     do    #1024,fft_input_left
  161.     mpyr    x0,x1,a
  162.     move    a,x0        y:(r2)+,y0
  163.     mpyr    x0,y0,a        x:(r0)+,x0
  164.     move            ab,l:(r1)+    ;set re, clear im
  165. fft_input_left
  166.  
  167. ;FFTR2CN
  168. ;
  169. ; This program originally available on the Motorola DSP bulletin board.
  170. ; It is provided under a DISCLAMER OF WARRANTY available from
  171. ; Motorola DSP Operation, 6501 Wm. Cannon Drive W., Austin, Tx., 78735.
  172. ; Radix 2, In-Place, Decimation-In-Time FFT (fast).
  173.     move    #>l_fft_sincos,n7
  174.  
  175.     move    r7,r0            ;#>l_fft_in
  176.     move    #1024/4,n0
  177.     move    n0,n4
  178.     move    n0,n6
  179.     movec    #1024-1,m0        ;m0 - modulo addressing
  180.     movec    m0,m1            ;m1 - modulo addressing
  181.     movec    m0,m4            ;m4 - modulo addressing
  182.     movec    m0,m5            ;m5 - modulo addressing
  183.     move            x:(r0)+n0,x0
  184.     tfr    x0,a        x:(r0)+n0,y1   
  185.     do    n0,fft_twopass
  186.     tfr    y1,b        x:(r0)+n0,y0
  187.     add    y0,a        x:(r0),x1
  188.     add    x1,b        r0,r4
  189.     add    a,b        (r0)+n0
  190.     subl    b,a        b,x:(r0)+n0
  191.     tfr    x0,a        a,x0        y:(r0),b
  192.     sub    y0,a                y:(r4)+n4,y0
  193.     sub    y0,b        x0,x:(r0)
  194.     add    a,b                y:(r0)+n0,x0
  195.     subl    b,a        b,x:(r0)
  196.     tfr    x0,a        a,x0        y:(r4),b
  197.     add    y0,a                y:(r0)+n0,y0
  198.     add    y0,b        x0,x:(r0)+n0
  199.     add    b,a                y:(r0)+,x0
  200.     subl    a,b                a,y:(r4)+n4
  201.     tfr    x0,a                b,y:(r4)+n4
  202.     sub    y0,a        x1,b
  203.     sub    y1,b        x:(r0)+n0,x0
  204.     add    a,b        x:(r0)+n0,y1
  205.     subl    b,a                b,y:(r4)+n4
  206.     tfr    x0,a                a,y:(r4)+
  207. fft_twopass
  208.  
  209.     move    #1024/8,n1        ;butterflies per group
  210.     move    #<4,n2            ;groups per pass
  211.     movec    #<0,m6            ;m6 - bit-reversed addressing
  212.     do    #10-3,fft_pass
  213.     move    r7,r0            ;#>l_fft_in
  214.     move    r0,r1
  215.     move    n1,r2
  216.     move    r0,r4
  217.     move    (r1)+n1
  218.     move    r1,r5
  219.     move    n7,r6            ;#>l_fft_sincos
  220.     lua    (r2)+,n0
  221.     move    n0,n4
  222.     move    n0,n5
  223.     move    (r2)-            ;butterfly loop count
  224.     move            x:(r1),x1    y:(r6),y0
  225.     move            x:(r6)+n6,x0    y:(r0),b
  226.     mac    x1,y0,b                y:(r1)+,y1
  227.     macr    -x0,y1,b            y:(r0),a
  228.     do    n2,fft_grp
  229.     do    r2,fft_bfy
  230.     subl    b,a        x:(r0),b    b,y:(r4)
  231.     mac    -x1,x0,b    x:(r0)+,a    a,y:(r5)
  232.     macr    -y1,y0,b    x:(r1),x1
  233.     subl    b,a        b,x:(r4)+    y:(r0),b
  234.     mac    x1,y0,b                y:(r1)+,y1
  235.     macr    -x0,y1,b    a,x:(r5)+    y:(r0),a
  236. fft_bfy    move    (r1)+n1
  237.     subl    b,a        x:(r0),b    b,y:(r4)
  238.     mac    -x1,x0,b    x:(r0)+n0,a    a,y:(r5)
  239.     macr    -y1,y0,b    x:(r1),x1    y:(r6),y0
  240.     subl    b,a        b,x:(r4)+n4    y:(r0),b
  241.     mac    x1,y0,b        x:(r6)+n6,x0    y:(r1)+,y1
  242.     macr    -x0,y1,b    a,x:(r5)+n5    y:(r0),a
  243. fft_grp    move    n1,b
  244.     lsr    b    n2,a    ;divide butterflies per group by two
  245.     lsl    a    b,n1    ;multiply groups per pass by two
  246.     move    a,n2
  247. fft_pass
  248.  
  249.     move    #<2,n0
  250.     move    n0,n1
  251.     move    #1024/4,n4
  252.     move    n4,n5
  253.     move    r7,r0            ;#>l_fft_in
  254.     move    #>l_fft_out,r4
  255.     move    r4,r2
  256.     lua    (r0)+,r1
  257.     lua    (r2)+n2,r5
  258.     movec    #<0,m4            ;m4 - bit-reversed addressing
  259.     movec    m4,m5            ;m5 - bit-reversed addressing
  260.     move    n7,r6            ;#>l_fft_sincos
  261.     move    (r5)-n5
  262.     move            x:(r1),x1    y:(r6),y0
  263.     move            x:(r5),a    y:(r0),b
  264.  
  265.     do    n2,fft_lastpass
  266.     mac    x1,y0,b        x:(r6)+n6,x0    y:(r1)+n1,y1
  267.     macr    -x0,y1,b    a,x:(r5)+n5    y:(r0),a
  268.     subl    b,a        x:(r0),b    b,y:(r4)
  269.     mac    -x1,x0,b    x:(r0)+n0,a    a,y:(r5)
  270.     macr    -y1,y0,b    x:(r1),x1    y:(r6),y0
  271.     subl    b,a        b,x:(r4)+n4    y:(r0),b
  272. fft_lastpass
  273.     move            a,x:(r5)+n5
  274.  
  275.     movec   m7,m0            ;m0 - linear addressing
  276.     movec   m7,m1            ;m1 - linear addressing
  277.     movec   m7,m4            ;m4 - linear addressing
  278.     movec   m7,m5            ;m5 - linear addressing
  279.     movec   m7,m6            ;m6 - linear addressing
  280. ;------------------------------------------------------------------------
  281.  
  282.  
  283.  
  284.  
  285. ;convert complex output values to magnitude (dB-scale)
  286.     move    #>l_fft_out,r0
  287.     move    #>l_buf8,r1
  288.  
  289.     do    #416,fft_magnitude
  290.     move            x:(r0),x0
  291.     mpy    x0,x0,a        y:(r0)+,y0
  292.     mac    y0,y0,a        #<$40,x0    ;a=yr**2+yi**2
  293.     move    a1,y1                ;transfer sum of squares to y
  294.     move    a0,y0
  295.  
  296.     clr    b        x0,x1    ;init root
  297.     do    #23,fft_mag_sqrt
  298.     mpy    -x0,x0,a        ;square and negate the guess
  299.     add    y,a            ;compare to double precision input
  300.     tge    x0,b            ;update root if input >= guess
  301.     tfr    x1,a            ;get bit to test
  302.     asr    a            ;shift to next bit to test
  303.     add    b,a        a,x1    ;form new guess
  304.     move    a,x0            ;save new guess
  305. fft_mag_sqrt
  306.  
  307.     move    #>y_fft_log_coef,r2
  308.     move    #>$000008,a
  309.     move            y:(r2)+,y1    ;get dB-offset
  310.     cmp    a,b        #-0.6228,a    ;log of zero:  -120 dB
  311.     jle    fft_logzero
  312.     movec    m7,r7            ;#$ffff
  313.     rep    #23            ;normalize (0.5 ... 1.0)
  314.     norm    r7,b            ;shift left, decrement r7 if needed
  315.     move    b,x0
  316.     mpyr    x0,x0,a        y:(r2)+,y0    ;x**2, get c1
  317.     mpy    x0,y0,a    a,x1    y:(r2)+,y0    ;c1*x, mv x**2, get c2
  318.     mac    x1,y0,a        y:(r2)+,y0    ;c2* x**2, get c0
  319.     add    y0,a                ;add in c0
  320.     asl    a                ;multiply by 4
  321.     asl    a
  322.     asl    a                ;shift out sign bit
  323.     move    r7,a2            ;new sign = characteristic
  324.     rep    #6
  325.     asr    a            ;divide by 32, create sign bit
  326. fft_logzero
  327.     add    y1,a    #<0,y0        ;+ dB-offset
  328.     tmi    y0,a
  329.     move    #0.8027486,y0        ;1/0.31143*0.25  (display 60 dB range)
  330.     move    a,x0
  331.     mpy    x0,y0,a
  332.     asl    a
  333.     asl    a            ;*4
  334.     move    a,x:(r1)+        ;save result
  335.  
  336. fft_magnitude
  337.  
  338.     move    #<0,x0
  339.     move    x0,x:x_busy        ;clear BUSY
  340.     rts
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349. ;***************************************************************************
  350.  
  351.     org    x:
  352. ;->xdata+0
  353. x_busy        ds    1
  354. ;->xdata+1
  355. x_avg_l        ds    1
  356. ;->xdata+2
  357. x_avg_r        ds    1
  358.  
  359.  
  360.  
  361.  
  362.     org    y:
  363. ;->ydata+0
  364. y_mod_count    dc    -1
  365.  
  366. y_bufpt        dc    l_buf24
  367. y_plot_type    dc    0
  368. y_plot_jmp    dc    0,plot_1,plot_2
  369.  
  370. y_fft_log_coef    dc    0.41524    ;80dB        ;0.31143==60dB
  371.         dc    0.9981958, -0.3372223, -0.6626105
  372.  
  373. ;Blackman-Harris window
  374. y_fft_window
  375.  dc 0.000000,0.000003,0.000013,0.000030,0.000054,0.000084,0.000122,0.000166
  376.  dc 0.000217,0.000274,0.000339,0.000410,0.000488,0.000573,0.000665,0.000764
  377.  dc 0.000870,0.000983,0.001102,0.001229,0.001362,0.001503,0.001650,0.001805
  378.  dc 0.001966,0.002135,0.002311,0.002494,0.002684,0.002882,0.003086,0.003298
  379.  dc 0.003517,0.003744,0.003978,0.004219,0.004468,0.004724,0.004987,0.005259
  380.  dc 0.005538,0.005824,0.006118,0.006420,0.006730,0.007047,0.007373,0.007706
  381.  dc 0.008047,0.008396,0.008753,0.009119,0.009492,0.009874,0.010264,0.010662
  382.  dc 0.011068,0.011483,0.011907,0.012339,0.012779,0.013228,0.013686,0.014153
  383.  dc 0.014628,0.015113,0.015606,0.016108,0.016619,0.017140,0.017669,0.018208
  384.  dc 0.018756,0.019314,0.019881,0.020457,0.021043,0.021639,0.022244,0.022860
  385.  dc 0.023485,0.024119,0.024764,0.025419,0.026084,0.026759,0.027445,0.028141
  386.  dc 0.028847,0.029564,0.030291,0.031029,0.031777,0.032536,0.033307,0.034087
  387.  dc 0.034879,0.035682,0.036497,0.037322,0.038158,0.039006,0.039865,0.040736
  388.  dc 0.041619,0.042512,0.043418,0.044336,0.045265,0.046206,0.047159,0.048124
  389.  dc 0.049102,0.050091,0.051093,0.052107,0.053134,0.054173,0.055224,0.056288
  390.  dc 0.057365,0.058455,0.059558,0.060673,0.061801,0.062943,0.064097,0.065265
  391.  dc 0.066446,0.067640,0.068848,0.070069,0.071304,0.072552,0.073814,0.075089
  392.  dc 0.076379,0.077682,0.078999,0.080330,0.081675,0.083034,0.084407,0.085794
  393.  dc 0.087196,0.088612,0.090042,0.091486,0.092945,0.094419,0.095907,0.097410
  394.  dc 0.098927,0.100460,0.102007,0.103568,0.105145,0.106736,0.108342,0.109964
  395.  dc 0.111600,0.113252,0.114918,0.116600,0.118297,0.120009,0.121736,0.123479
  396.  dc 0.125237,0.127010,0.128799,0.130603,0.132423,0.134258,0.136108,0.137974
  397.  dc 0.139856,0.141753,0.143666,0.145594,0.147538,0.149498,0.151473,0.153464
  398.  dc 0.155471,0.157493,0.159531,0.161585,0.163655,0.165740,0.167841,0.169957
  399.  dc 0.172090,0.174238,0.176402,0.178581,0.180776,0.182987,0.185214,0.187456
  400.  dc 0.189714,0.191988,0.194277,0.196582,0.198903,0.201239,0.203590,0.205957
  401.  dc 0.208340,0.210738,0.213152,0.215581,0.218025,0.220485,0.222960,0.225451
  402.  dc 0.227956,0.230477,0.233013,0.235564,0.238130,0.240711,0.243308,0.245919
  403.  dc 0.248544,0.251185,0.253841,0.256511,0.259196,0.261895,0.264609,0.267337
  404.  dc 0.270080,0.272836,0.275608,0.278393,0.281192,0.284005,0.286833,0.289674
  405.  dc 0.292529,0.295397,0.298279,0.301175,0.304084,0.307006,0.309941,0.312890
  406.  dc 0.315851,0.318826,0.321813,0.324813,0.327826,0.330851,0.333888,0.336938
  407.  dc 0.340000,0.343074,0.346160,0.349258,0.352367,0.355488,0.358620,0.361764
  408.  dc 0.364919,0.368085,0.371262,0.374450,0.377648,0.380857,0.384076,0.387306
  409.  dc 0.390546,0.393795,0.397055,0.400324,0.403603,0.406891,0.410188,0.413495
  410.  dc 0.416810,0.420134,0.423467,0.426808,0.430157,0.433515,0.436881,0.440254
  411.  dc 0.443635,0.447023,0.450419,0.453822,0.457231,0.460648,0.464071,0.467501
  412.  dc 0.470936,0.474378,0.477826,0.481279,0.484738,0.488202,0.491672,0.495146
  413.  dc 0.498625,0.502108,0.505596,0.509088,0.512584,0.516084,0.519587,0.523094
  414.  dc 0.526604,0.530117,0.533633,0.537151,0.540671,0.544194,0.547719,0.551245
  415.  dc 0.554773,0.558302,0.561833,0.565364,0.568896,0.572428,0.575961,0.579494
  416.  dc 0.583026,0.586558,0.590090,0.593620,0.597150,0.600678,0.604205,0.607730
  417.  dc 0.611253,0.614774,0.618292,0.621808,0.625321,0.628831,0.632337,0.635840
  418.  dc 0.639340,0.642835,0.646326,0.649813,0.653294,0.656771,0.660243,0.663710
  419.  dc 0.667170,0.670625,0.674074,0.677517,0.680953,0.684382,0.687804,0.691219
  420.  dc 0.694627,0.698027,0.701419,0.704802,0.708177,0.711544,0.714902,0.718250
  421.  dc 0.721589,0.724919,0.728239,0.731549,0.734848,0.738137,0.741415,0.744682
  422.  dc 0.747938,0.751183,0.754415,0.757636,0.760845,0.764041,0.767225,0.770396
  423.  dc 0.773553,0.776698,0.779829,0.782946,0.786049,0.789138,0.792212,0.795272
  424.  dc 0.798317,0.801347,0.804361,0.807360,0.810343,0.813310,0.816261,0.819195
  425.  dc 0.822112,0.825013,0.827897,0.830763,0.833612,0.836443,0.839255,0.842050
  426.  dc 0.844827,0.847584,0.850323,0.853043,0.855744,0.858425,0.861086,0.863728
  427.  dc 0.866349,0.868951,0.871532,0.874092,0.876631,0.879149,0.881647,0.884122
  428.  dc 0.886576,0.889008,0.891418,0.893806,0.896172,0.898515,0.900835,0.903132
  429.  dc 0.905406,0.907657,0.909884,0.912088,0.914268,0.916424,0.918556,0.920663
  430.  dc 0.922746,0.924804,0.926838,0.928846,0.930830,0.932788,0.934720,0.936627
  431.  dc 0.938508,0.940364,0.942193,0.943996,0.945772,0.947523,0.949246,0.950943
  432.  dc 0.952613,0.954256,0.955871,0.957460,0.959021,0.960554,0.962060,0.963538
  433.  dc 0.964988,0.966410,0.967804,0.969169,0.970506,0.971815,0.973095,0.974347
  434.  dc 0.975569,0.976763,0.977928,0.979064,0.980170,0.981248,0.982295,0.983314
  435.  dc 0.984303,0.985262,0.986192,0.987092,0.987962,0.988803,0.989613,0.990393
  436.  dc 0.991143,0.991864,0.992553,0.993213,0.993842,0.994441,0.995010,0.995548
  437.  dc 0.996055,0.996532,0.996979,0.997394,0.997779,0.998134,0.998457,0.998750
  438.  dc 0.999013,0.999244,0.999444,0.999614,0.999753,0.999861,0.999938,0.999985
  439.  dc 0.999999,0.999985,0.999938,0.999861,0.999753,0.999614,0.999444,0.999244
  440.  dc 0.999013,0.998750,0.998457,0.998134,0.997779,0.997394,0.996979,0.996532
  441.  dc 0.996055,0.995548,0.995010,0.994441,0.993842,0.993213,0.992553,0.991864
  442.  dc 0.991143,0.990393,0.989613,0.988803,0.987962,0.987092,0.986192,0.985262
  443.  dc 0.984303,0.983314,0.982295,0.981248,0.980170,0.979064,0.977928,0.976763
  444.  dc 0.975569,0.974347,0.973095,0.971815,0.970506,0.969169,0.967804,0.966410
  445.  dc 0.964988,0.963538,0.962060,0.960554,0.959021,0.957460,0.955871,0.954256
  446.  dc 0.952613,0.950943,0.949246,0.947523,0.945772,0.943996,0.942193,0.940364
  447.  dc 0.938508,0.936627,0.934720,0.932788,0.930830,0.928846,0.926838,0.924804
  448.  dc 0.922746,0.920663,0.918556,0.916424,0.914268,0.912088,0.909884,0.907657
  449.  dc 0.905406,0.903132,0.900835,0.898515,0.896172,0.893806,0.891418,0.889008
  450.  dc 0.886576,0.884122,0.881647,0.879149,0.876631,0.874092,0.871532,0.868951
  451.  dc 0.866349,0.863728,0.861086,0.858425,0.855744,0.853043,0.850323,0.847584
  452.  dc 0.844827,0.842050,0.839255,0.836443,0.833612,0.830763,0.827897,0.825013
  453.  dc 0.822112,0.819195,0.816261,0.813310,0.810343,0.807360,0.804361,0.801347
  454.  dc 0.798317,0.795272,0.792212,0.789138,0.786049,0.782946,0.779829,0.776698
  455.  dc 0.773553,0.770396,0.767225,0.764041,0.760845,0.757636,0.754415,0.751183
  456.  dc 0.747938,0.744682,0.741415,0.738137,0.734848,0.731549,0.728239,0.724919
  457.  dc 0.721589,0.718250,0.714902,0.711544,0.708177,0.704802,0.701419,0.698027
  458.  dc 0.694627,0.691219,0.687804,0.684382,0.680953,0.677517,0.674074,0.670625
  459.  dc 0.667170,0.663710,0.660243,0.656771,0.653294,0.649813,0.646326,0.642835
  460.  dc 0.639340,0.635840,0.632337,0.628831,0.625321,0.621808,0.618292,0.614774
  461.  dc 0.611253,0.607730,0.604205,0.600678,0.597150,0.593620,0.590090,0.586558
  462.  dc 0.583026,0.579494,0.575961,0.572428,0.568896,0.565364,0.561833,0.558302
  463.  dc 0.554773,0.551245,0.547719,0.544194,0.540671,0.537151,0.533633,0.530117
  464.  dc 0.526604,0.523094,0.519587,0.516084,0.512584,0.509088,0.505596,0.502108
  465.  dc 0.498625,0.495146,0.491672,0.488202,0.484738,0.481279,0.477826,0.474378
  466.  dc 0.470936,0.467501,0.464071,0.460648,0.457231,0.453822,0.450419,0.447023
  467.  dc 0.443635,0.440254,0.436881,0.433515,0.430157,0.426808,0.423467,0.420134
  468.  dc 0.416810,0.413495,0.410188,0.406891,0.403603,0.400324,0.397055,0.393795
  469.  dc 0.390546,0.387306,0.384076,0.380857,0.377648,0.374450,0.371262,0.368085
  470.  dc 0.364919,0.361764,0.358620,0.355488,0.352367,0.349258,0.346160,0.343074
  471.  dc 0.340000,0.336938,0.333888,0.330851,0.327826,0.324813,0.321813,0.318826
  472.  dc 0.315851,0.312890,0.309941,0.307006,0.304084,0.301175,0.298279,0.295397
  473.  dc 0.292529,0.289674,0.286833,0.284005,0.281192,0.278393,0.275608,0.272836
  474.  dc 0.270080,0.267337,0.264609,0.261895,0.259196,0.256511,0.253841,0.251185
  475.  dc 0.248544,0.245919,0.243308,0.240711,0.238130,0.235564,0.233013,0.230477
  476.  dc 0.227956,0.225451,0.222960,0.220485,0.218025,0.215581,0.213152,0.210738
  477.  dc 0.208340,0.205957,0.203590,0.201239,0.198903,0.196582,0.194277,0.191988
  478.  dc 0.189714,0.187456,0.185214,0.182987,0.180776,0.178581,0.176402,0.174238
  479.  dc 0.172090,0.169957,0.167841,0.165740,0.163655,0.161585,0.159531,0.157493
  480.  dc 0.155471,0.153464,0.151473,0.149498,0.147538,0.145594,0.143666,0.141753
  481.  dc 0.139856,0.137974,0.136108,0.134258,0.132423,0.130603,0.128799,0.127010
  482.  dc 0.125237,0.123479,0.121736,0.120009,0.118297,0.116600,0.114918,0.113252
  483.  dc 0.111600,0.109964,0.108342,0.106736,0.105145,0.103568,0.102007,0.100460
  484.  dc 0.098927,0.097410,0.095907,0.094419,0.092945,0.091486,0.090042,0.088612
  485.  dc 0.087196,0.085794,0.084407,0.083034,0.081675,0.080330,0.078999,0.077682
  486.  dc 0.076379,0.075089,0.073814,0.072552,0.071304,0.070069,0.068848,0.067640
  487.  dc 0.066446,0.065265,0.064097,0.062943,0.061801,0.060673,0.059558,0.058455
  488.  dc 0.057365,0.056288,0.055224,0.054173,0.053134,0.052107,0.051093,0.050091
  489.  dc 0.049102,0.048124,0.047159,0.046206,0.045265,0.044336,0.043418,0.042512
  490.  dc 0.041619,0.040736,0.039865,0.039006,0.038158,0.037322,0.036497,0.035682
  491.  dc 0.034879,0.034087,0.033307,0.032536,0.031777,0.031029,0.030291,0.029564
  492.  dc 0.028847,0.028141,0.027445,0.026759,0.026084,0.025419,0.024764,0.024119
  493.  dc 0.023485,0.022860,0.022244,0.021639,0.021043,0.020457,0.019881,0.019314
  494.  dc 0.018756,0.018208,0.017669,0.017140,0.016619,0.016108,0.015606,0.015113
  495.  dc 0.014628,0.014153,0.013686,0.013228,0.012779,0.012339,0.011907,0.011483
  496.  dc 0.011068,0.010662,0.010264,0.009874,0.009492,0.009119,0.008753,0.008396
  497.  dc 0.008047,0.007706,0.007373,0.007047,0.006730,0.006420,0.006118,0.005824
  498.  dc 0.005538,0.005259,0.004987,0.004724,0.004468,0.004219,0.003978,0.003744
  499.  dc 0.003517,0.003298,0.003086,0.002882,0.002684,0.002494,0.002311,0.002135
  500.  dc 0.001966,0.001805,0.001650,0.001503,0.001362,0.001229,0.001102,0.000983
  501.  dc 0.000870,0.000764,0.000665,0.000573,0.000488,0.000410,0.000339,0.000274
  502.  dc 0.000217,0.000166,0.000122,0.000084,0.000054,0.000030,0.000013,0.000003
  503.  
  504.  
  505.  
  506.  
  507.     org    l:
  508.     align    2048
  509. l_buf24        ds    2048        ;ALIGN 2048 required!
  510.  
  511. ;->ldata+2048
  512. l_fft_out
  513. l_buf8        ds    1024        ;ALIGN 1024 required!
  514.  
  515. l_fft_in    ds    1024        ;ALIGN 1024 required!
  516.  
  517.  
  518. l_fft_sincos    ;x:-cos        ;y:-sin    ;ALIGN 512  required!
  519.     dcl    -1.000000,    0.000000    ;0
  520.     dcl    -0.999981,    -0.006135    ;1
  521.     dcl    -0.999925,    -0.012271    ;2
  522.     dcl    -0.999831,    -0.018406    ;3
  523.     dcl    -0.999699,    -0.024541    ;4
  524.     dcl    -0.999529,    -0.030674    ;5
  525.     dcl    -0.999322,    -0.036807    ;6
  526.     dcl    -0.999078,    -0.042938    ;7
  527.     dcl    -0.998795,    -0.049067    ;8
  528.     dcl    -0.998476,    -0.055195    ;9
  529.     dcl    -0.998118,    -0.061320    ;10
  530.     dcl    -0.997723,    -0.067443    ;11
  531.     dcl    -0.997290,    -0.073564    ;12
  532.     dcl    -0.996820,    -0.079682    ;13
  533.     dcl    -0.996313,    -0.085797    ;14
  534.     dcl    -0.995767,    -0.091909    ;15
  535.     dcl    -0.995185,    -0.098017    ;16
  536.     dcl    -0.994565,    -0.104122    ;17
  537.     dcl    -0.993907,    -0.110222    ;18
  538.     dcl    -0.993212,    -0.116319    ;19
  539.     dcl    -0.992480,    -0.122411    ;20
  540.     dcl    -0.991710,    -0.128498    ;21
  541.     dcl    -0.990903,    -0.134581    ;22
  542.     dcl    -0.990058,    -0.140658    ;23
  543.     dcl    -0.989177,    -0.146730    ;24
  544.     dcl    -0.988258,    -0.152797    ;25
  545.     dcl    -0.987301,    -0.158858    ;26
  546.     dcl    -0.986308,    -0.164913    ;27
  547.     dcl    -0.985278,    -0.170962    ;28
  548.     dcl    -0.984210,    -0.177004    ;29
  549.     dcl    -0.983105,    -0.183040    ;30
  550.     dcl    -0.981964,    -0.189069    ;31
  551.     dcl    -0.980785,    -0.195090    ;32
  552.     dcl    -0.979570,    -0.201105    ;33
  553.     dcl    -0.978317,    -0.207111    ;34
  554.     dcl    -0.977028,    -0.213110    ;35
  555.     dcl    -0.975702,    -0.219101    ;36
  556.     dcl    -0.974339,    -0.225084    ;37
  557.     dcl    -0.972940,    -0.231058    ;38
  558.     dcl    -0.971504,    -0.237024    ;39
  559.     dcl    -0.970031,    -0.242980    ;40
  560.     dcl    -0.968522,    -0.248928    ;41
  561.     dcl    -0.966976,    -0.254866    ;42
  562.     dcl    -0.965394,    -0.260794    ;43
  563.     dcl    -0.963776,    -0.266713    ;44
  564.     dcl    -0.962121,    -0.272621    ;45
  565.     dcl    -0.960431,    -0.278520    ;46
  566.     dcl    -0.958703,    -0.284408    ;47
  567.     dcl    -0.956940,    -0.290285    ;48
  568.     dcl    -0.955141,    -0.296151    ;49
  569.     dcl    -0.953306,    -0.302006    ;50
  570.     dcl    -0.951435,    -0.307850    ;51
  571.     dcl    -0.949528,    -0.313682    ;52
  572.     dcl    -0.947586,    -0.319502    ;53
  573.     dcl    -0.945607,    -0.325310    ;54
  574.     dcl    -0.943593,    -0.331106    ;55
  575.     dcl    -0.941544,    -0.336890    ;56
  576.     dcl    -0.939459,    -0.342661    ;57
  577.     dcl    -0.937339,    -0.348419    ;58
  578.     dcl    -0.935184,    -0.354164    ;59
  579.     dcl    -0.932993,    -0.359895    ;60
  580.     dcl    -0.930767,    -0.365613    ;61
  581.     dcl    -0.928506,    -0.371317    ;62
  582.     dcl    -0.926210,    -0.377007    ;63
  583.     dcl    -0.923880,    -0.382683    ;64
  584.     dcl    -0.921514,    -0.388345    ;65
  585.     dcl    -0.919114,    -0.393992    ;66
  586.     dcl    -0.916679,    -0.399624    ;67
  587.     dcl    -0.914210,    -0.405241    ;68
  588.     dcl    -0.911706,    -0.410843    ;69
  589.     dcl    -0.909168,    -0.416430    ;70
  590.     dcl    -0.906596,    -0.422000    ;71
  591.     dcl    -0.903989,    -0.427555    ;72
  592.     dcl    -0.901349,    -0.433094    ;73
  593.     dcl    -0.898674,    -0.438616    ;74
  594.     dcl    -0.895966,    -0.444122    ;75
  595.     dcl    -0.893224,    -0.449611    ;76
  596.     dcl    -0.890449,    -0.455084    ;77
  597.     dcl    -0.887640,    -0.460539    ;78
  598.     dcl    -0.884797,    -0.465976    ;79
  599.     dcl    -0.881921,    -0.471397    ;80
  600.     dcl    -0.879012,    -0.476799    ;81
  601.     dcl    -0.876070,    -0.482184    ;82
  602.     dcl    -0.873095,    -0.487550    ;83
  603.     dcl    -0.870087,    -0.492898    ;84
  604.     dcl    -0.867046,    -0.498228    ;85
  605.     dcl    -0.863973,    -0.503538    ;86
  606.     dcl    -0.860867,    -0.508830    ;87
  607.     dcl    -0.857729,    -0.514103    ;88
  608.     dcl    -0.854558,    -0.519356    ;89
  609.     dcl    -0.851355,    -0.524590    ;90
  610.     dcl    -0.848120,    -0.529804    ;91
  611.     dcl    -0.844854,    -0.534998    ;92
  612.     dcl    -0.841555,    -0.540171    ;93
  613.     dcl    -0.838225,    -0.545325    ;94
  614.     dcl    -0.834863,    -0.550458    ;95
  615.     dcl    -0.831470,    -0.555570    ;96
  616.     dcl    -0.828045,    -0.560662    ;97
  617.     dcl    -0.824589,    -0.565732    ;98
  618.     dcl    -0.821103,    -0.570781    ;99
  619.     dcl    -0.817585,    -0.575808    ;100
  620.     dcl    -0.814036,    -0.580814    ;101
  621.     dcl    -0.810457,    -0.585798    ;102
  622.     dcl    -0.806848,    -0.590760    ;103
  623.     dcl    -0.803208,    -0.595699    ;104
  624.     dcl    -0.799537,    -0.600616    ;105
  625.     dcl    -0.795837,    -0.605511    ;106
  626.     dcl    -0.792107,    -0.610383    ;107
  627.     dcl    -0.788346,    -0.615232    ;108
  628.     dcl    -0.784557,    -0.620057    ;109
  629.     dcl    -0.780737,    -0.624859    ;110
  630.     dcl    -0.776888,    -0.629638    ;111
  631.     dcl    -0.773010,    -0.634393    ;112
  632.     dcl    -0.769103,    -0.639124    ;113
  633.     dcl    -0.765167,    -0.643832    ;114
  634.     dcl    -0.761202,    -0.648514    ;115
  635.     dcl    -0.757209,    -0.653173    ;116
  636.     dcl    -0.753187,    -0.657807    ;117
  637.     dcl    -0.749136,    -0.662416    ;118
  638.     dcl    -0.745058,    -0.667000    ;119
  639.     dcl    -0.740951,    -0.671559    ;120
  640.     dcl    -0.736817,    -0.676093    ;121
  641.     dcl    -0.732654,    -0.680601    ;122
  642.     dcl    -0.728464,    -0.685084    ;123
  643.     dcl    -0.724247,    -0.689541    ;124
  644.     dcl    -0.720003,    -0.693971    ;125
  645.     dcl    -0.715731,    -0.698376    ;126
  646.     dcl    -0.711432,    -0.702755    ;127
  647.     dcl    -0.707107,    -0.707107    ;128
  648.     dcl    -0.702755,    -0.711432    ;129
  649.     dcl    -0.698376,    -0.715731    ;130
  650.     dcl    -0.693971,    -0.720003    ;131
  651.     dcl    -0.689541,    -0.724247    ;132
  652.     dcl    -0.685084,    -0.728464    ;133
  653.     dcl    -0.680601,    -0.732654    ;134
  654.     dcl    -0.676093,    -0.736817    ;135
  655.     dcl    -0.671559,    -0.740951    ;136
  656.     dcl    -0.667000,    -0.745058    ;137
  657.     dcl    -0.662416,    -0.749136    ;138
  658.     dcl    -0.657807,    -0.753187    ;139
  659.     dcl    -0.653173,    -0.757209    ;140
  660.     dcl    -0.648514,    -0.761202    ;141
  661.     dcl    -0.643832,    -0.765167    ;142
  662.     dcl    -0.639124,    -0.769103    ;143
  663.     dcl    -0.634393,    -0.773010    ;144
  664.     dcl    -0.629638,    -0.776888    ;145
  665.     dcl    -0.624859,    -0.780737    ;146
  666.     dcl    -0.620057,    -0.784557    ;147
  667.     dcl    -0.615232,    -0.788346    ;148
  668.     dcl    -0.610383,    -0.792107    ;149
  669.     dcl    -0.605511,    -0.795837    ;150
  670.     dcl    -0.600616,    -0.799537    ;151
  671.     dcl    -0.595699,    -0.803208    ;152
  672.     dcl    -0.590760,    -0.806848    ;153
  673.     dcl    -0.585798,    -0.810457    ;154
  674.     dcl    -0.580814,    -0.814036    ;155
  675.     dcl    -0.575808,    -0.817585    ;156
  676.     dcl    -0.570781,    -0.821103    ;157
  677.     dcl    -0.565732,    -0.824589    ;158
  678.     dcl    -0.560662,    -0.828045    ;159
  679.     dcl    -0.555570,    -0.831470    ;160
  680.     dcl    -0.550458,    -0.834863    ;161
  681.     dcl    -0.545325,    -0.838225    ;162
  682.     dcl    -0.540171,    -0.841555    ;163
  683.     dcl    -0.534998,    -0.844854    ;164
  684.     dcl    -0.529804,    -0.848120    ;165
  685.     dcl    -0.524590,    -0.851355    ;166
  686.     dcl    -0.519356,    -0.854558    ;167
  687.     dcl    -0.514103,    -0.857729    ;168
  688.     dcl    -0.508830,    -0.860867    ;169
  689.     dcl    -0.503538,    -0.863973    ;170
  690.     dcl    -0.498228,    -0.867046    ;171
  691.     dcl    -0.492898,    -0.870087    ;172
  692.     dcl    -0.487550,    -0.873095    ;173
  693.     dcl    -0.482184,    -0.876070    ;174
  694.     dcl    -0.476799,    -0.879012    ;175
  695.     dcl    -0.471397,    -0.881921    ;176
  696.     dcl    -0.465976,    -0.884797    ;177
  697.     dcl    -0.460539,    -0.887640    ;178
  698.     dcl    -0.455084,    -0.890449    ;179
  699.     dcl    -0.449611,    -0.893224    ;180
  700.     dcl    -0.444122,    -0.895966    ;181
  701.     dcl    -0.438616,    -0.898674    ;182
  702.     dcl    -0.433094,    -0.901349    ;183
  703.     dcl    -0.427555,    -0.903989    ;184
  704.     dcl    -0.422000,    -0.906596    ;185
  705.     dcl    -0.416430,    -0.909168    ;186
  706.     dcl    -0.410843,    -0.911706    ;187
  707.     dcl    -0.405241,    -0.914210    ;188
  708.     dcl    -0.399624,    -0.916679    ;189
  709.     dcl    -0.393992,    -0.919114    ;190
  710.     dcl    -0.388345,    -0.921514    ;191
  711.     dcl    -0.382683,    -0.923880    ;192
  712.     dcl    -0.377007,    -0.926210    ;193
  713.     dcl    -0.371317,    -0.928506    ;194
  714.     dcl    -0.365613,    -0.930767    ;195
  715.     dcl    -0.359895,    -0.932993    ;196
  716.     dcl    -0.354164,    -0.935184    ;197
  717.     dcl    -0.348419,    -0.937339    ;198
  718.     dcl    -0.342661,    -0.939459    ;199
  719.     dcl    -0.336890,    -0.941544    ;200
  720.     dcl    -0.331106,    -0.943593    ;201
  721.     dcl    -0.325310,    -0.945607    ;202
  722.     dcl    -0.319502,    -0.947586    ;203
  723.     dcl    -0.313682,    -0.949528    ;204
  724.     dcl    -0.307850,    -0.951435    ;205
  725.     dcl    -0.302006,    -0.953306    ;206
  726.     dcl    -0.296151,    -0.955141    ;207
  727.     dcl    -0.290285,    -0.956940    ;208
  728.     dcl    -0.284408,    -0.958703    ;209
  729.     dcl    -0.278520,    -0.960431    ;210
  730.     dcl    -0.272621,    -0.962121    ;211
  731.     dcl    -0.266713,    -0.963776    ;212
  732.     dcl    -0.260794,    -0.965394    ;213
  733.     dcl    -0.254866,    -0.966976    ;214
  734.     dcl    -0.248928,    -0.968522    ;215
  735.     dcl    -0.242980,    -0.970031    ;216
  736.     dcl    -0.237024,    -0.971504    ;217
  737.     dcl    -0.231058,    -0.972940    ;218
  738.     dcl    -0.225084,    -0.974339    ;219
  739.     dcl    -0.219101,    -0.975702    ;220
  740.     dcl    -0.213110,    -0.977028    ;221
  741.     dcl    -0.207111,    -0.978317    ;222
  742.     dcl    -0.201105,    -0.979570    ;223
  743.     dcl    -0.195090,    -0.980785    ;224
  744.     dcl    -0.189069,    -0.981964    ;225
  745.     dcl    -0.183040,    -0.983105    ;226
  746.     dcl    -0.177004,    -0.984210    ;227
  747.     dcl    -0.170962,    -0.985278    ;228
  748.     dcl    -0.164913,    -0.986308    ;229
  749.     dcl    -0.158858,    -0.987301    ;230
  750.     dcl    -0.152797,    -0.988258    ;231
  751.     dcl    -0.146730,    -0.989177    ;232
  752.     dcl    -0.140658,    -0.990058    ;233
  753.     dcl    -0.134581,    -0.990903    ;234
  754.     dcl    -0.128498,    -0.991710    ;235
  755.     dcl    -0.122411,    -0.992480    ;236
  756.     dcl    -0.116319,    -0.993212    ;237
  757.     dcl    -0.110222,    -0.993907    ;238
  758.     dcl    -0.104122,    -0.994565    ;239
  759.     dcl    -0.098017,    -0.995185    ;240
  760.     dcl    -0.091909,    -0.995767    ;241
  761.     dcl    -0.085797,    -0.996313    ;242
  762.     dcl    -0.079682,    -0.996820    ;243
  763.     dcl    -0.073564,    -0.997290    ;244
  764.     dcl    -0.067443,    -0.997723    ;245
  765.     dcl    -0.061320,    -0.998118    ;246
  766.     dcl    -0.055195,    -0.998476    ;247
  767.     dcl    -0.049067,    -0.998795    ;248
  768.     dcl    -0.042938,    -0.999078    ;249
  769.     dcl    -0.036807,    -0.999322    ;250
  770.     dcl    -0.030674,    -0.999529    ;251
  771.     dcl    -0.024541,    -0.999699    ;252
  772.     dcl    -0.018406,    -0.999831    ;253
  773.     dcl    -0.012271,    -0.999925    ;254
  774.     dcl    -0.006135,    -0.999981    ;255
  775.     dcl    0.000000,    -1.000000    ;256
  776.     dcl    0.006135,    -0.999981    ;257
  777.     dcl    0.012271,    -0.999925    ;258
  778.     dcl    0.018406,    -0.999831    ;259
  779.     dcl    0.024541,    -0.999699    ;260
  780.     dcl    0.030674,    -0.999529    ;261
  781.     dcl    0.036807,    -0.999322    ;262
  782.     dcl    0.042938,    -0.999078    ;263
  783.     dcl    0.049067,    -0.998795    ;264
  784.     dcl    0.055195,    -0.998476    ;265
  785.     dcl    0.061320,    -0.998118    ;266
  786.     dcl    0.067443,    -0.997723    ;267
  787.     dcl    0.073564,    -0.997290    ;268
  788.     dcl    0.079682,    -0.996820    ;269
  789.     dcl    0.085797,    -0.996313    ;270
  790.     dcl    0.091909,    -0.995767    ;271
  791.     dcl    0.098017,    -0.995185    ;272
  792.     dcl    0.104122,    -0.994565    ;273
  793.     dcl    0.110222,    -0.993907    ;274
  794.     dcl    0.116319,    -0.993212    ;275
  795.     dcl    0.122411,    -0.992480    ;276
  796.     dcl    0.128498,    -0.991710    ;277
  797.     dcl    0.134581,    -0.990903    ;278
  798.     dcl    0.140658,    -0.990058    ;279
  799.     dcl    0.146730,    -0.989177    ;280
  800.     dcl    0.152797,    -0.988258    ;281
  801.     dcl    0.158858,    -0.987301    ;282
  802.     dcl    0.164913,    -0.986308    ;283
  803.     dcl    0.170962,    -0.985278    ;284
  804.     dcl    0.177004,    -0.984210    ;285
  805.     dcl    0.183040,    -0.983105    ;286
  806.     dcl    0.189069,    -0.981964    ;287
  807.     dcl    0.195090,    -0.980785    ;288
  808.     dcl    0.201105,    -0.979570    ;289
  809.     dcl    0.207111,    -0.978317    ;290
  810.     dcl    0.213110,    -0.977028    ;291
  811.     dcl    0.219101,    -0.975702    ;292
  812.     dcl    0.225084,    -0.974339    ;293
  813.     dcl    0.231058,    -0.972940    ;294
  814.     dcl    0.237024,    -0.971504    ;295
  815.     dcl    0.242980,    -0.970031    ;296
  816.     dcl    0.248928,    -0.968522    ;297
  817.     dcl    0.254866,    -0.966976    ;298
  818.     dcl    0.260794,    -0.965394    ;299
  819.     dcl    0.266713,    -0.963776    ;300
  820.     dcl    0.272621,    -0.962121    ;301
  821.     dcl    0.278520,    -0.960431    ;302
  822.     dcl    0.284408,    -0.958703    ;303
  823.     dcl    0.290285,    -0.956940    ;304
  824.     dcl    0.296151,    -0.955141    ;305
  825.     dcl    0.302006,    -0.953306    ;306
  826.     dcl    0.307850,    -0.951435    ;307
  827.     dcl    0.313682,    -0.949528    ;308
  828.     dcl    0.319502,    -0.947586    ;309
  829.     dcl    0.325310,    -0.945607    ;310
  830.     dcl    0.331106,    -0.943593    ;311
  831.     dcl    0.336890,    -0.941544    ;312
  832.     dcl    0.342661,    -0.939459    ;313
  833.     dcl    0.348419,    -0.937339    ;314
  834.     dcl    0.354164,    -0.935184    ;315
  835.     dcl    0.359895,    -0.932993    ;316
  836.     dcl    0.365613,    -0.930767    ;317
  837.     dcl    0.371317,    -0.928506    ;318
  838.     dcl    0.377007,    -0.926210    ;319
  839.     dcl    0.382683,    -0.923880    ;320
  840.     dcl    0.388345,    -0.921514    ;321
  841.     dcl    0.393992,    -0.919114    ;322
  842.     dcl    0.399624,    -0.916679    ;323
  843.     dcl    0.405241,    -0.914210    ;324
  844.     dcl    0.410843,    -0.911706    ;325
  845.     dcl    0.416430,    -0.909168    ;326
  846.     dcl    0.422000,    -0.906596    ;327
  847.     dcl    0.427555,    -0.903989    ;328
  848.     dcl    0.433094,    -0.901349    ;329
  849.     dcl    0.438616,    -0.898674    ;330
  850.     dcl    0.444122,    -0.895966    ;331
  851.     dcl    0.449611,    -0.893224    ;332
  852.     dcl    0.455084,    -0.890449    ;333
  853.     dcl    0.460539,    -0.887640    ;334
  854.     dcl    0.465976,    -0.884797    ;335
  855.     dcl    0.471397,    -0.881921    ;336
  856.     dcl    0.476799,    -0.879012    ;337
  857.     dcl    0.482184,    -0.876070    ;338
  858.     dcl    0.487550,    -0.873095    ;339
  859.     dcl    0.492898,    -0.870087    ;340
  860.     dcl    0.498228,    -0.867046    ;341
  861.     dcl    0.503538,    -0.863973    ;342
  862.     dcl    0.508830,    -0.860867    ;343
  863.     dcl    0.514103,    -0.857729    ;344
  864.     dcl    0.519356,    -0.854558    ;345
  865.     dcl    0.524590,    -0.851355    ;346
  866.     dcl    0.529804,    -0.848120    ;347
  867.     dcl    0.534998,    -0.844854    ;348
  868.     dcl    0.540171,    -0.841555    ;349
  869.     dcl    0.545325,    -0.838225    ;350
  870.     dcl    0.550458,    -0.834863    ;351
  871.     dcl    0.555570,    -0.831470    ;352
  872.     dcl    0.560662,    -0.828045    ;353
  873.     dcl    0.565732,    -0.824589    ;354
  874.     dcl    0.570781,    -0.821103    ;355
  875.     dcl    0.575808,    -0.817585    ;356
  876.     dcl    0.580814,    -0.814036    ;357
  877.     dcl    0.585798,    -0.810457    ;358
  878.     dcl    0.590760,    -0.806848    ;359
  879.     dcl    0.595699,    -0.803208    ;360
  880.     dcl    0.600616,    -0.799537    ;361
  881.     dcl    0.605511,    -0.795837    ;362
  882.     dcl    0.610383,    -0.792107    ;363
  883.     dcl    0.615232,    -0.788346    ;364
  884.     dcl    0.620057,    -0.784557    ;365
  885.     dcl    0.624859,    -0.780737    ;366
  886.     dcl    0.629638,    -0.776888    ;367
  887.     dcl    0.634393,    -0.773010    ;368
  888.     dcl    0.639124,    -0.769103    ;369
  889.     dcl    0.643832,    -0.765167    ;370
  890.     dcl    0.648514,    -0.761202    ;371
  891.     dcl    0.653173,    -0.757209    ;372
  892.     dcl    0.657807,    -0.753187    ;373
  893.     dcl    0.662416,    -0.749136    ;374
  894.     dcl    0.667000,    -0.745058    ;375
  895.     dcl    0.671559,    -0.740951    ;376
  896.     dcl    0.676093,    -0.736817    ;377
  897.     dcl    0.680601,    -0.732654    ;378
  898.     dcl    0.685084,    -0.728464    ;379
  899.     dcl    0.689541,    -0.724247    ;380
  900.     dcl    0.693971,    -0.720003    ;381
  901.     dcl    0.698376,    -0.715731    ;382
  902.     dcl    0.702755,    -0.711432    ;383
  903.     dcl    0.707107,    -0.707107    ;384
  904.     dcl    0.711432,    -0.702755    ;385
  905.     dcl    0.715731,    -0.698376    ;386
  906.     dcl    0.720003,    -0.693971    ;387
  907.     dcl    0.724247,    -0.689541    ;388
  908.     dcl    0.728464,    -0.685084    ;389
  909.     dcl    0.732654,    -0.680601    ;390
  910.     dcl    0.736817,    -0.676093    ;391
  911.     dcl    0.740951,    -0.671559    ;392
  912.     dcl    0.745058,    -0.667000    ;393
  913.     dcl    0.749136,    -0.662416    ;394
  914.     dcl    0.753187,    -0.657807    ;395
  915.     dcl    0.757209,    -0.653173    ;396
  916.     dcl    0.761202,    -0.648514    ;397
  917.     dcl    0.765167,    -0.643832    ;398
  918.     dcl    0.769103,    -0.639124    ;399
  919.     dcl    0.773010,    -0.634393    ;400
  920.     dcl    0.776888,    -0.629638    ;401
  921.     dcl    0.780737,    -0.624859    ;402
  922.     dcl    0.784557,    -0.620057    ;403
  923.     dcl    0.788346,    -0.615232    ;404
  924.     dcl    0.792107,    -0.610383    ;405
  925.     dcl    0.795837,    -0.605511    ;406
  926.     dcl    0.799537,    -0.600616    ;407
  927.     dcl    0.803208,    -0.595699    ;408
  928.     dcl    0.806848,    -0.590760    ;409
  929.     dcl    0.810457,    -0.585798    ;410
  930.     dcl    0.814036,    -0.580814    ;411
  931.     dcl    0.817585,    -0.575808    ;412
  932.     dcl    0.821103,    -0.570781    ;413
  933.     dcl    0.824589,    -0.565732    ;414
  934.     dcl    0.828045,    -0.560662    ;415
  935.     dcl    0.831470,    -0.555570    ;416
  936.     dcl    0.834863,    -0.550458    ;417
  937.     dcl    0.838225,    -0.545325    ;418
  938.     dcl    0.841555,    -0.540171    ;419
  939.     dcl    0.844854,    -0.534998    ;420
  940.     dcl    0.848120,    -0.529804    ;421
  941.     dcl    0.851355,    -0.524590    ;422
  942.     dcl    0.854558,    -0.519356    ;423
  943.     dcl    0.857729,    -0.514103    ;424
  944.     dcl    0.860867,    -0.508830    ;425
  945.     dcl    0.863973,    -0.503538    ;426
  946.     dcl    0.867046,    -0.498228    ;427
  947.     dcl    0.870087,    -0.492898    ;428
  948.     dcl    0.873095,    -0.487550    ;429
  949.     dcl    0.876070,    -0.482184    ;430
  950.     dcl    0.879012,    -0.476799    ;431
  951.     dcl    0.881921,    -0.471397    ;432
  952.     dcl    0.884797,    -0.465976    ;433
  953.     dcl    0.887640,    -0.460539    ;434
  954.     dcl    0.890449,    -0.455084    ;435
  955.     dcl    0.893224,    -0.449611    ;436
  956.     dcl    0.895966,    -0.444122    ;437
  957.     dcl    0.898674,    -0.438616    ;438
  958.     dcl    0.901349,    -0.433094    ;439
  959.     dcl    0.903989,    -0.427555    ;440
  960.     dcl    0.906596,    -0.422000    ;441
  961.     dcl    0.909168,    -0.416430    ;442
  962.     dcl    0.911706,    -0.410843    ;443
  963.     dcl    0.914210,    -0.405241    ;444
  964.     dcl    0.916679,    -0.399624    ;445
  965.     dcl    0.919114,    -0.393992    ;446
  966.     dcl    0.921514,    -0.388345    ;447
  967.     dcl    0.923880,    -0.382683    ;448
  968.     dcl    0.926210,    -0.377007    ;449
  969.     dcl    0.928506,    -0.371317    ;450
  970.     dcl    0.930767,    -0.365613    ;451
  971.     dcl    0.932993,    -0.359895    ;452
  972.     dcl    0.935184,    -0.354164    ;453
  973.     dcl    0.937339,    -0.348419    ;454
  974.     dcl    0.939459,    -0.342661    ;455
  975.     dcl    0.941544,    -0.336890    ;456
  976.     dcl    0.943593,    -0.331106    ;457
  977.     dcl    0.945607,    -0.325310    ;458
  978.     dcl    0.947586,    -0.319502    ;459
  979.     dcl    0.949528,    -0.313682    ;460
  980.     dcl    0.951435,    -0.307850    ;461
  981.     dcl    0.953306,    -0.302006    ;462
  982.     dcl    0.955141,    -0.296151    ;463
  983.     dcl    0.956940,    -0.290285    ;464
  984.     dcl    0.958703,    -0.284408    ;465
  985.     dcl    0.960431,    -0.278520    ;466
  986.     dcl    0.962121,    -0.272621    ;467
  987.     dcl    0.963776,    -0.266713    ;468
  988.     dcl    0.965394,    -0.260794    ;469
  989.     dcl    0.966976,    -0.254866    ;470
  990.     dcl    0.968522,    -0.248928    ;471
  991.     dcl    0.970031,    -0.242980    ;472
  992.     dcl    0.971504,    -0.237024    ;473
  993.     dcl    0.972940,    -0.231058    ;474
  994.     dcl    0.974339,    -0.225084    ;475
  995.     dcl    0.975702,    -0.219101    ;476
  996.     dcl    0.977028,    -0.213110    ;477
  997.     dcl    0.978317,    -0.207111    ;478
  998.     dcl    0.979570,    -0.201105    ;479
  999.     dcl    0.980785,    -0.195090    ;480
  1000.     dcl    0.981964,    -0.189069    ;481
  1001.     dcl    0.983105,    -0.183040    ;482
  1002.     dcl    0.984210,    -0.177004    ;483
  1003.     dcl    0.985278,    -0.170962    ;484
  1004.     dcl    0.986308,    -0.164913    ;485
  1005.     dcl    0.987301,    -0.158858    ;486
  1006.     dcl    0.988258,    -0.152797    ;487
  1007.     dcl    0.989177,    -0.146730    ;488
  1008.     dcl    0.990058,    -0.140658    ;489
  1009.     dcl    0.990903,    -0.134581    ;490
  1010.     dcl    0.991710,    -0.128498    ;491
  1011.     dcl    0.992480,    -0.122411    ;492
  1012.     dcl    0.993212,    -0.116319    ;493
  1013.     dcl    0.993907,    -0.110222    ;494
  1014.     dcl    0.994565,    -0.104122    ;495
  1015.     dcl    0.995185,    -0.098017    ;496
  1016.     dcl    0.995767,    -0.091909    ;497
  1017.     dcl    0.996313,    -0.085797    ;498
  1018.     dcl    0.996820,    -0.079682    ;499
  1019.     dcl    0.997290,    -0.073564    ;500
  1020.     dcl    0.997723,    -0.067443    ;501
  1021.     dcl    0.998118,    -0.061320    ;502
  1022.     dcl    0.998476,    -0.055195    ;503
  1023.     dcl    0.998795,    -0.049067    ;504
  1024.     dcl    0.999078,    -0.042938    ;505
  1025.     dcl    0.999322,    -0.036807    ;506
  1026.     dcl    0.999529,    -0.030674    ;507
  1027.     dcl    0.999699,    -0.024541    ;508
  1028.     dcl    0.999831,    -0.018406    ;509
  1029.     dcl    0.999925,    -0.012271    ;510
  1030.     dcl    0.999981,    -0.006135    ;511
  1031.  
  1032. ;the END
  1033.